#pragma once

// (Un)Portable types

typedef unsigned char uint8;
typedef unsigned short uint16;

typedef uint8 byte;
typedef uint16 word;

// Register pair macro
#define pair(A, B, C)				\
    union {							\
        word pair;					\
        struct { byte B, A; } reg;	\
    } C;

